export const isLimit = 10 // 表格限制大小
export const associationKey = '姓名' // 多个表之间用什么列名关联数据

// 表格列字段
// value 是代码里用来判断的值（与表格列字符串值对应）
export const columnName = {
  evaluate: '问答综合评价' // 此列是展示按钮->点击弹出教师评语
}

// 对某列数据进行“前置处理”再传递给表格
// 格式化表格 1 的数据
// 格式：列名：要处理函数
export const handleExcelOneObj = {
  '团队实战完成度(0-100%)': (value) => {
    // 0.9 转换成 90，在表格显示列内容时时再加上显示的百分号（这里是要赋予给表格的数据影响排序，所以暂时只传递数值）
    return value * 100
  }
}
// 格式化表格 2 的数据
// 格式：列名：要处理函数
export const handleExcelTwoObj = {
  '问答正确率': (value) => {
    try {
      // 因为 value 是个 5/10 这样格式的字符串而非数字，所以需要执行得到小数
      return (eval(value) * 100).toFixed(2) * 1
    } catch (err) {
      console.error('请检查问答正确率的格式，每行数据是否都是 5/10 这个格式的文本')
    }
  }
}

// 统计哪些列的平均分（注意对应列得是数值）
export const avgObj = {
  '团队实战完成度(0-100%)': 0,
  '团队合作意识(0-25)': 0,
  '执行能力(0-25)': 0,
  '技术能力(0-25)': 0,
  '状态表现+态度(0-25)': 0,
  '技术得分(100分)': 0,
  '表达得分(10分)': 0,
  '综合得分(技术+表达)': 0,
}

// 用到 el-table 中某列格式化函数(显示)
// 格式：列名: 处理函数
export const formatObj = {
  '团队实战完成度(0-100%)': (value) => {
    return value + '%'
  },
  '问答正确率': (value) => {
    return value + '%'
  }
}

// 以下数据为雷达图使用准备

// 归纳数据
// 用于统计某项能力（参考哪几列的数据）用代码进行合并分值计算
export const induceObj = {
  // 个人技术能力（数组元素对应表格列名，也是数据对象的属性名）
  personal: ['团队实战完成度(0-100%)', '技术能力(0-25)', '技术得分(100分)'],
  // 团队合作意识
  team: ['团队合作意识(0-25)'],
  // 个人态度
  intro: ['执行能力(0-25)', '状态表现+态度(0-25)'],
  // 表达能力
  deliver: ['表达得分(10分)']
}

// 与上个对象有关系
// 每项最大值（用于雷达图描绘数据范围）- 等于上面对象每列最高值的总和
export const maxGrade = [225, 25, 50, 10]

// 列描述
export const columnDesc = ['个人技术能力', '团队合作意识', '个人态度', '表达能力']